1. Field of the Invention
The present invention relates to an error compensation method for multi-axis controlled machines, which can perform geometric error compensation in order to improve the machining precision of a multi-axis controlled machine, regardless of its configuration.
2. Description of Related Art
Multi-axis controlled machines are a type of mechanical apparatus that includes two or more drive axes. Examples of the multi-axis controlled machines may include a multi-axis machine tool, a multi-axis articulated robot, a Coordinate Measuring Machine (CMM), and the like.
Multi-axis controlled machines are intrinsically plagued by many kinds of geometric errors, such as the error of each drive axis and the error between drive axes, which are complicatedly interlinked to each other, thereby resulting in deviation of final result (i.e., position and orientation) when the multi-axis controlled machine is driven or shifted.
Therefore, it is necessary to compensate for such geometric error in order to improve the precision of multi-axis controlled machines.
In this light, when compensating for geometric error of a machine tool having three or fewer axes, all of which are linear axes, it is necessary only to directly produce a compensation value for each drive axis, since only position error must be compensated for.
However, it is difficult to compensate for the geometric error of multi-axis controlled machines since multi-axis controlled machines, in which control over a rotation axis and the like is also simultaneously performed, must be subjected to compensation for both position error and orientation error.
Therefore, there is a demand for a solution that is able to quickly produce a compensation value for each drive axis in all types of multi-axis controlled machines, each of which includes four drive axes or more.
An error compensation method using the Newton-Raphson method is a generally known error compensation method. This method will be described with reference to FIG. 1.
FIG. 1 is a diagram expressing geometric error that occurs between a tool tip and a workpiece due to geometric error in a five-axis controlled machine.
Referring to FIG. 1, in the five-axis controlled machine, the position and orientation of the tool tip with respect to a nominal value rN of a joint variable include position error and orientation error according to volumetric error Ev(rN) as expressed by Formula 1 below:τpt(rN)=τp,Nt(rN)+Ev(rN)  Formula 1
In Formula 1 above, rN, which is the nominal value of the joint variable, is [xN, yN, zN, bN, cN], τtp is a homogeneous transformation matrix that includes error, τtp,N is a homogeneous transformation matrix that does not include error, and Ev(rN) indicates volumetric error with respect to the nominal value rN of the joint variable.
It is possible to divide the volumetric error into position error and orientation error. In FIG. 1, ΔPx=P*x−Px, ΔPy=P*y−Py, and ΔPz=P*z−Pz indicate the position error of the tool tip, and Δnx=n*x−nx, Δny=n*y−ny, and Δnz=n*z−nz indicate the orientation error of the tool tip.
In the above description, error compensation serves to produce a compensation value rC for each joint variable (x, y, z, b, c), so that the volumetric error becomes a zero matrix, that is, Ev=0. It aims to find an input value rC of a transformation matrix τtp(rC) that includes error, so that the transformation matrix τtp(rC) has the same position and orientation as when the nominal value rN is input to a transformation matrix τtp,N(rN) that does not include error. The input value rC becomes a compensation value. This is expressed by Formula 2 below.G(rC)=τp,Nt(rN)−τpt(rC)=0  Formula 2
In Formula 2 above, rC, which is the compensation value of the joint variable, is [xC, yC, zC, bC, cC]. In Formula 2 above, τtp,N(rN) can be produced by inputting a nominal value of a joint variable to a pure kinematic model, and τtp,(rC) can be produced by inputting a compensation value of a joint variable to an error synthesis model. In addition, G is a 4×4 matrix, in which G1,4, G2,4, and G3,4, which indicate position error, and G1,3 and G2,3, which are related to the orientation of the tool tip in the orientation error, are matrix components necessary for error compensation (hereinafter, referred to as error components). When the error components are combined in a formula that uses the compensation value rC as a variable, they are expressed by Formula 3 below.F1(rC)=G1,4=ΔPx=0F2(rC)=G2,4=ΔPy=0F3(rC)=G3,4=ΔPz=0F4(rC)=G1,3=Δnx=0F5(rC)=G2,3=Δny=0  Formula 3
When Formula 3 is solved with respect to the variables [xC, yC, zC, bC, cC], with which it is intended to produce a simultaneous equation, the compensation value rC for error compensation can be produced. However, it is impossible to linearly solve Formula 3, since each equation includes nonlinear functions. For this purpose, the Newton-Raphson method, which is a numerical analysis method that can effectively produce a solution for a nonlinear equation, is used.
The compensation value to be produced is defined as rC=rN+δr, in which the nominal value rN can be produced using inverse kinematics, and the difference δr between the compensation value and the nominal value can be produced by the Newton-Raphson method as follows.
When expanded by a Taylor's series, the function F1 in Formula 3 is expressed as follows:
                    F        i            ⁡              (                              r            N                    +                      δ            r                          )              =                            F                      i            ⁢                                                                ⁡                  (                      r            N                    )                    +                        ∑                      j            =            1                    5                ⁢                                            ∂                              F                i                                                    ∂                              r                                  N                  j                                                              ⁢                      δ                          r                              N                j                                                        +              O        ⁡                  (                      δ            ⁢                                                  ⁢                          r              N              2                                )                      ,          ⁢      i    =    1    ,  2  ,  3  ,  4  ,  5
In addition, when higher-order terms are omitted from the above formula, it is expressed by the following matrix.F(rN+δr)=F(rN)+Jδr 
Here, if F(rN+δr)=F(rC)=0, it is possible to produce a linear equation for producing δr as follows.F(rN)+Jδr=0
In this equation, F is a vector that uses the function F1 as a component, and J is a Jacobian matrix. It is possible to produce the linear equation by performing partial differentiation on the joint variable in each equation of Formula 3 above. If an inverse matrix J−1 of J exists, δr is produced as follows:δr=−J−1F(•rN)
If δr, produced as described above, is smaller than a preset tolerance, a compensation value for the joint variable is set as a final error compensation value.
That is, in the error compensation using the numerical analysis method, a Jacobian matrix J is formed by producing a partial differential value for each joint variable after a nominal value rN for tool posture is produced using inverse kinematics and an error compensation model F as in Formula 3 is formed, and δr is calculated after a Jacobian inverse matrix is produced using the LU Decomposition or SVD. This process is repeated until δr becomes smaller than the preset tolerance. If δr is smaller than the preset tolerance, the compensation value rC of the joint variable is calculated by applying δr.
However, in the error compensation for multi-axis controlled machines, it is required to produce the differential values of geometric error components in order to form the Jacobian matrix J. Therefore, it is difficult to apply the error compensation method using the Newton-Raphson method, for general use, to an interpolator or a controller of a Numerical Control (NC) or, for practical use, to multi-axis controlled machines having a variety of configurations. In addition, numerical calculation, such as the LU Decomposition or SVD, is required to produce the inverse Jacobian matrix. Since there is possibility that the inverse Jacobian matrix may not exist due to limited numerical expression of a computer, it is required to jointly use an additional method in order to produce a solution.
The information disclosed in this Background of the Invention section is only for the enhancement of understanding of the background of the invention and should not be taken as an acknowledgment or any form of suggestion that this information forms a prior art that would already be known to a person skilled in the art.